e133cd7c56cd062e8c390cbdf8e475649be577a8,src/main/java/net/bootsfaces/component/datePicker/DatePicker.java,DatePicker,encodeHTML,#FacesContext#,220

Before Change


		String type = inline ? "hidden" : "text";

		rw.startElement("input", null);
		rw.writeAttribute("id", clientId, null);
		rw.writeAttribute("name", clientId, null);
		Tooltip.generateTooltip(fc, this, rw);
		rw.writeAttribute("type", type, null);

After Change


		if (responsiveStyleClass.length() > 0) {
			rw.startElement("div", this);
			rw.writeAttribute("class", responsiveStyleClass, "class");
			rw.writeAttribute("id", clientId, "id");
		}
		rw.startElement("div", this);
		rw.writeAttribute("class", "form-group", "class");
		addLabel(rw, clientId);

		// stz = selectTimeZone(attrs.get(A.TZ));

		sloc = selectLocale(fc.getViewRoot().getLocale(), A.asString(attrs.get(JQ.LOCALE)));
		sdf = selectDateFormat(sloc, A.asString(attrs.get(JQ.DTFORMAT)));

		// Debugging Locale and dateformat
		// rw.write("<span>DEBUG sloc='"+sloc+"', sdf='"+sdf+"' </span>");

		String dpId;

		Object v = getSubmittedValue();
		if (v == null) {
			v = this.getValue();
		}

		/*
		 * 6 modes: 1) inline 2) popup (no icons) 3) popup-icon 4) icon-popup 5)
		 * toggle-icon (Default) 6) icon-toggle
		 */
		boolean isDisabled = A.toBool(attrs.get("disabled"));
		mode = A.asString(attrs.get("mode"), "toggle-icon");
		boolean inline = mode.equals("inline");
		boolean styleHasBeenRendered=false;

		if (inline) { // inline => div with ID
			dpId = clientId + "_" + "div";
			rw.startElement("div", this);
			rw.writeAttribute("id", dpId, null);
			rw.endElement("div");
			if (getStyleClass()!=null) {
				rw.writeAttribute("styleClass", getStyleClass(), "styleClass");
			}
			if (getStyle()!=null) {
				rw.writeAttribute("style", getStyle(), "style");
			}
			styleHasBeenRendered=true;
		} else { // popup
			dpId = clientId;

			if (!mode.equals("popup")) { // with icon => div with prepend/append
												// style
				rw.startElement("div", this);
				if (getStyleClass()!=null) {
					rw.writeAttribute("styleClass", "input-group "+  getStyleClass(), "styleClass");
				} else {
					rw.writeAttribute("class", "input-group", "class");
				}
				if (getStyle()!=null) {
					rw.writeAttribute("style", getStyle(), "style");
				}
				styleHasBeenRendered=true;
				
				if (mode.equals("icon-popup") || mode.equals("icon-toggle")) {
					rw.startElement("span", this);
					rw.writeAttribute("id", clientId + "_" + ADDON, "id");
					rw.writeAttribute("class", ADDON, "class");
					IconRenderer.encodeIcon(rw, this, "calendar", false, null, null, null, false, null, null,
							isDisabled, true, true, true);
					rw.endElement("span");
				}
			}
		}
		String type = inline ? "hidden" : "text";

		rw.startElement("input", null);
		rw.writeAttribute("id", clientId + "_input", null);
		if (!styleHasBeenRendered) {
			if (getStyleClass()!=null) {
				rw.writeAttribute("styleClass", getStyleClass(), "styleClass");
			}
			if (getStyle()!=null) {
				rw.writeAttribute("style", getStyle(), "style");
			}
		}
		rw.writeAttribute("name", clientId, null);